import {
  getUserInfo
} from "../../api/my"

import Dialog from '@vant/weapp/dialog/dialog';

import {
  createStoreBindings
} from "mobx-miniprogram-bindings";
import {
  userStore
} from '../../store/user'

// pages/my/my.js
Page({

  mixins: [require('../../Mixins/tabBarTitle.js')],

  /**
   * 页面的初始数据
   */
  data: {
    userInfo: '',
  },

  async getUserData() {
    const res = await getUserInfo()
    if (res.code === 200) {
      this.setData({
        userInfo: res.data
      })
    }
  },

  // 退出
  logout() {
    Dialog.confirm({
        title: '提示',
        message: '你确认退出吗?',
      })
      .then(() => {
        // 清空token
        this.setToken('')
        wx.setTabBarItem({
          index: 3,
          text: '未登录'
        })
        // 跳转到登录页
        wx.redirectTo({
          url: '../../subPage/login/login',
        })
      })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.storeBindings = createStoreBindings(this, {
      store: userStore,
      fields: ['token', 'getToken'],
      actions: ['setToken']
    })

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    const token = userStore.token
    if (!token) {
      return Dialog.alert({
        message: '还未登录，请先登录',
        theme: 'round-button',
      }).then(() => {
        wx.redirectTo({
          url: '../../subPage/login/login?redirect=/pages/my/my',
        })
      })

    }

    this.getUserData()

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {
    this.storeBindings.destroyStoreBindings()
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})